package com.xnyzc.lhy.didi.entity.invoice;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 发票的订单详情
 *
 * @author wangshuo
 * @since 2019-10-15
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "TcInvoiceInfo对象", description = "发票订单")
public class TcInvoiceInfo implements Serializable {

    private static final long serialVersionUID = 1L;
    /***
     * sign	String	是	签名
     * clientId	String	是	接入渠道id，由同程分配
     * timestamp	Integer	是	请求时间，Unix Timestamp单位秒
     * order_id	String	是	供应商订单ID，多个用，隔开
     * title	String	是	发票抬头
     * amount	Integer	否	开票金额,单位分，不传则为订单结算价
     * buyer_type	Integer	是	开票类型，1：个人，2：单位
     * tax_number	String	否	税号（单位发票必填，个人发票不填）
     * receive_name	String	否	收件人姓名
     * receive_mobile	String	是	收件人手机号
     * receive_email	String	是	收件人邮箱
     * invoice_type	Integer	是	发票类型，1纸质，2电子（目前仅用电子）子）
     * regist_address	String	否	注册地址
     * regist_phone	String	否	注册电话
     * open_bank	String	否	开户银行
     * bank_account	String	否	银行账号
     * invoice_remark	String	否	发票备注
     */
    @ApiModelProperty(value = "ID")
    @TableId(value = "id", type = IdType.INPUT)
    private Long id;
    @ApiModelProperty(value = "申请时间")
    private Date timesTamp;
    @ApiModelProperty(value = "供应商订单ID，多个用，隔开")
    private String orderId;
    @ApiModelProperty(value = "接入渠道id，由同程分配")
    private String clientId;
    @ApiModelProperty(value = "发票抬头")
    private String title;
    @ApiModelProperty(value = "开票金额,单位分，不传则为订单结算价")
    private BigDecimal amount;
    @ApiModelProperty(value = "开票类型，1：个人，2：单位")
    private Integer buyerType;
    @ApiModelProperty(value = "税号（单位发票必填，个人发票不填）")
    private String taxNumber;
    @ApiModelProperty(value = "收件人姓名")
    private String receiveName;
    @ApiModelProperty(value = "收件人电话")
    private String receiveMobile;
    @ApiModelProperty(value = "收件人邮件")
    private String receiveEmail;
    @ApiModelProperty(value = "发票类型，1纸质，2电子（目前仅用电子）子）")
    private Integer invoiceType;
    @ApiModelProperty(value = "注册地址")
    private String registAddress;
    @ApiModelProperty(value = "注册电话")
    private String registPhone;
    @ApiModelProperty(value = "开户银行")
    private String openBank;
    @ApiModelProperty(value = "银行账号")
    private String bankAccount;
    @ApiModelProperty(value = "发票备注")
    private String invoiceRemark;
    @ApiModelProperty(value = "开票状态1：待开票2：已开票")
    private Integer invoiceStatus;
    @ApiModelProperty(value = "发票URL")
    private String invoiceUrl;
    @ApiModelProperty(value = "部门id")
    private Integer departmentId;
    @ApiModelProperty(value = "发票的序列号")
    private String invoiceSerialNum;
    @ApiModelProperty(value = "发票令牌")
    private String accessToken;
    @ApiModelProperty(value = "删除状态 0：未删除 1：已删除")
    private Integer deleted;


    public static final String ID = "id";
    public static final String ORDER_ID = "order_id";
}
